As the variety of available computing devices increases, and as the size of many of these devices decreases, people are increasingly utilizing portable devices such as cellular phones, personal digital assistants (PDAs) and other electronic devices to perform an ever-increasing variety of tasks. Accordingly, there comes a need to adapt the ways in which users interface with these computing devices to perform these tasks. For example, while typing on a keyboard is an easy and acceptable way for many users to input information for a desktop computer, trying to enter information on a keyboard of a portable phone can be difficult due to the small form factor of the device. Some devices allow for voice commands or voice input, but the accuracy of such input can vary based upon factors such as background noise, consistency in the user's voice and speech patterns and proximity of the user to the device. Further, many voice recognition applications require the user to undergo a lengthy training process, wherein the user must speak a long list of words in order to “train” the device to recognize the way in which the user pronounces certain alphanumeric characters and combinations of those characters.